
export function parseTime(time, cFormat) {
  if (time === '' || time === null) {
    return ''
  }
  // 没有定义过滤格式
  if (!cFormat) {
    if ((time + '').length === 13 || (/000$/).test(time)) {
      time = parseInt(time)
      cFormat = '{y}-{m}-{d}'
    }
  }
  time = new Date(time)
  if (arguments.length === 0) {
    return null
  }

  if ((time + '').length === 10) {
    time = +time * 1000
  }

  const format = cFormat || '{y}-{m}-{d} {h}:{i}:{s}'
  let date
  if (typeof time === 'object') {
    date = time
  } else {
    date = new Date(parseInt(time))
  }
  const formatObj = {
    y: date.getFullYear(),
    m: date.getMonth() + 1,
    d: date.getDate(),
    h: date.getHours(),
    i: date.getMinutes(),
    s: date.getSeconds(),
    a: date.getDay()
  }
  const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => {
    let value = formatObj[key]
    if (key === 'a') return ['一', '二', '三', '四', '五', '六', '日'][value - 1]
    if (result.length > 0 && value < 10) {
      value = '0' + value
    }
    return value || 0
  })
  return time_str
}

const that = this
export function geval(str, func1) {
  // console.log('geval', str, func1)
  if (func1 === 'parseTime("{y}-{m}-{d} {h}:{i}:{s}")') {
    return parseTime(str, '{y}-{m}-{d} {h}:{i}:{s}')
  } else if (func1 === 'parseTime("{y}-{m}-{d}")') {
    return parseTime(str, '{y}-{m}-{d}')
  } else {
    // 第一种 成功 但是es5编译报错
    // return evil(func1 + '(' + str + ')')

    // 第二种 失败
    // const Fn = Function // 一个变量指向Function，防止有些前端编译工具报错
    // const now_func = new Fn(func1)()
    // return now_func(str)

    // 第三种
    return that[func1](str)
  }
}

// 运力认证页-是否浮动
export function isFloatFilter(v) {
  if (v === 0) {
    return '否'
  } else if (v === 1) {
    return '是'
  } else {
    return ''
  }
}
